約 3,281,786 件
https://w.atwiki.jp/guru/pages/66.html
はじめに 想定する言語及び画像処理ライブラリ 対象者 1. 画像処理の基礎の基礎 2. 2値画像処理? 3. 画像のフィルタリング? はじめに 思いつきで初めてみました。 飽きたら突然終了します。 面倒くさがりなので、基本的には、原理の解説は可能な限り解説ページのリンクを貼る方針でいきます。 想定する言語及び画像処理ライブラリ 言語はC++、画像処理ライブラリにはBoost.GILを想定しています。 Boost.GILはテンプレートを多用しているため、多少プログラミングの経験がないと少し難解かもしれません。 対象者 C++の文法が理解できる C++でSTLの使用経験がある 画像処理関連の研究・開発に従事している、入門者 Boost.GILの使い方が知りたい人 ※ STL (Standard Template Library) については、下記を参照 STL Standard Template Library (Wikipedia) STLのページ Standard Template Library プログラミング on the Web C/C++リファレンス 1. 画像処理の基礎の基礎 画像の種類と構造 画像の入出力? 2. 2値画像処理? 3. 画像のフィルタリング?
https://w.atwiki.jp/chugoku/pages/81.html
生産財情報サイト まるごとわかる画像センサ/画像処理装置 キーエンス社 名前 コメント
https://w.atwiki.jp/javadsge/pages/81.html
package imp2; import javafx.application.Application; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.stage.Stage; import javafx.scene.Group; import javafx.scene.shape.*; import static javafx.application.Application.launch; import javafx.scene.paint.Color; import javafx.scene.input.MouseEvent; import javafx.scene.control.Label; import javafx.scene.image.Image; import javafx.scene.image.ImageView; import javafx.scene.canvas.Canvas; import javafx.scene.image.PixelReader; import javafx.scene.canvas.GraphicsContext; public class pro extends Application { Canvas cam; GraphicsContext gc; int[][] mr=new int[500][500]; int[][] mg=new int[500][500]; int[][] mb=new int[500][500]; int px,py; public static void main(String[] args) { launch(args); } @Override public void start(Stage primaryStage) { px=0; py=0; Image im = new Image("file pic/1.jpg"); ImageView imageView = new ImageView(); imageView.setImage(im); PixelReader reader = im.getPixelReader(); int mx,nx; for(mx=0;mx 500;mx++){ for(nx=0;nx 500;nx++){ Color col = reader.getColor(nx, mx); mr[mx][nx] =(int)(255*col.getRed()); mg[mx][nx] = (int)(255*col.getGreen()); mb[mx][nx] = (int)(255*col.getBlue()); } } cam = new Canvas(500,500); gc = cam.getGraphicsContext2D(); for(mx=0;mx 500;mx++){ for(nx=0;nx 500;nx++){ Color c = Color.rgb(mr[mx][nx],mg[mx][nx],mb[mx][nx]); gc.setFill(c); gc.fillRect(nx,mx,1,1); } } cam.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler MouseEvent () { @Override public void handle(MouseEvent e) { px=(int)e.getX(); py=(int)e.getY(); Color c2 = Color.rgb(mr[py][px],mg[py][px],mb[py][px]); gc.setFill(c2); gc.fillRect(px,py,100,100); } }); Group root = new Group(); Scene scene = new Scene(root, 700, 700); root.getChildren().add(cam); primaryStage.setTitle("侵略者"); primaryStage.setScene(scene); primaryStage.show(); } }
https://w.atwiki.jp/sevenlives/pages/275.html
ImageMagick? Imlib? gdk-pixbuf? Photoshop トリミング? リサイズ サムネイル カリグラフィ? ペジェ曲線? トレース? ラスタライズ? モノクロ? グレースケール? グラデーション? グロー? ディザ法 エイリアシング? モアレ? Exif マジック・バイト? ダブル・バッファリング? バウンディング・ボックス アニメーション ステガノグラフィー? ■ 画像形式? ドロー? ビットマップ? GIF? JPEG PNGPNG-8? PNG-24? BMP ベクター?SVG VML? PGML? ■ カラー 並置加法混色? RGB RGBA? HSL? HSV? HEX値? 減法混色?CMY? ■ モニタ? 解像度 VRAM? アスペクト比 コントラスト比? ■ CG 3DCG アルファ・ブレンディング
https://w.atwiki.jp/chugoku/pages/80.html
リンクス社のHALCON クラボウさん レーザーの直進性と斜めから照射で距離を求める。 原理 名前 コメント
https://w.atwiki.jp/chugoku/pages/63.html
1、正確 2、だいたい 言い方を変えると 1、計測 2、認識 工業分野以外に医療やメディア分野もあるだろうが、ここでは工業分野に目を向ける これらは応用編だが、基礎編はなんだろう。 1、カメラからデータを読み込んで表示 2、画像データのフォーマット、色の理解 3、濃度、色の変換。 4、雑音除去、ぼかし 5、輪郭抽出 6、2値化(ラベリング、膨張・収縮) このあたりはOpenCVではモルフォロジー演算のサンプルがある 応用では、 1、計測(キャリブレーション、特徴抽出、ハフ変換、?段取り第一か) ハフ変換は図面にない直線=キズ。真円度 画像処理 計測でgoogleすると キーエンス位置決め キーエンス寸法測定 キーエンス真円度 μ単位まで計測 全数検査 詳細を押すと動画が面白い googleで何度も行き着く先、無作為研究所 一部実測で廉価 これも 1ピクセル(画素)がミクロ単位はほしい。1ピクセルがmm単位だと建築分野 ある深度の範囲で倍率同じ いずれにしても位置や角度が正確につかめ、どの範囲を撮影しているのか正確であればかなりいい精度で計測できるでしょう。 カメラも2種類あり、普通のレンズとテレセントリックレンズだ。テレセントリックレンズだと補正をしなくてもいい。テレセントリックレンズの構造 価格 今は、CADを使うのが普通で計測の自動化もしやすい。3D使う会社は複雑な製品なのでそうれなりの装置が必要です。 2、認識 判別するのに手法などないような気がしますが、harr-likeなんかよく考えると人がモノを判別するときに各特徴を記憶に照らし合わせているのと同じような気がする。人は学習して瞬時に判定するのとxmlの特徴分類器とよく似ている。判断データがあるのが人だ。認識もその方向の方が正確かもしれない。 また、計測は何らかの基準(ノギスやマイクロメーター)などがないとできない。 でもやり方いろいろだな。自信持ってやろう。 やるにしても基本知識がないといけない。 色ろ考えるまでにまず手を動かそう。最小限。以下のサンプルは全部実行すべきだ。 CXCOREのサンプル。OpenCVで使うデータ構造 cvのサンプル。画像処理のアルゴリズム 「今日の訪問数 - 」 「昨日の訪問数 - 」 「今までの訪問数 - 」 名前 コメント
https://w.atwiki.jp/cplusplus/pages/27.html
UVC LinuxのUVCドライバ rev.263
https://w.atwiki.jp/javadsge/pages/547.html
package img; import javafx.application.Application; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.scene.Scene; import javafx.scene.control.Button; import javafx.scene.layout.StackPane; import javafx.stage.Stage; import javafx.scene.image.Image; import java.io.File; import static javafx.application.Application.launch; import javafx.scene.image.ImageView; import javafx.scene.Group; import javafx.scene.canvas.Canvas; import javafx.scene.canvas.GraphicsContext; import javafx.scene.paint.Color; import javafx.scene.input.MouseEvent; public class pro extends Application { GraphicsContext gc; int h=800; int w=800; int[][] memor=new int[h][w]; int[][] memog=new int[h][w]; int[][] memob=new int[h][w]; int number; int[] sampler=new int[100]; int[] sampleg=new int[100]; int[] sampleb=new int[100]; int[] pointx=new int[100]; int[] pointy=new int[100]; public static void main(String[] args) { launch(args); } @Override public void start(Stage primaryStage) { faststep sub2=new faststep(); sub2.makedata("data.png"); w=sub2.w; h=sub2.h; catchimg sub=new catchimg(); sub.w=w; sub.h=h; sub.makedata("data.png"); memor=sub.memor; memog=sub.memog; memob=sub.memob; Canvas canvas = new Canvas(500, 500); gc = canvas.getGraphicsContext2D(); canvas.setLayoutX(50); canvas.setLayoutY(50); int mx,nx; for(mx=0;mx h;mx++){ for(nx=0;nx w;nx++){ gc.setFill(Color.rgb(memor[mx][nx],memog[mx][nx],memob[mx][nx])); gc.fillRect(nx,mx,1,1); }} canvas.addEventHandler(MouseEvent.MOUSE_CLICKED, new EventHandler MouseEvent () { @Override public void handle(MouseEvent e) { int x1,y1; int px=(int)e.getX(); int py=(int)e.getY(); gc.setFill(Color.RED); gc.fillRect(px,py,10,10); } }); Group root = new Group(); Scene scene = new Scene(root, 700, 700); root.getChildren().add(canvas); primaryStage.setTitle("写真"); primaryStage.setScene(scene); primaryStage.show(); } } package img; import java.awt.*; import java.awt.image.*; import java.net.URL; import java.net.MalformedURLException; public class catchimg { PixelGrabber pg; Color col; Image img; int red,green,blue; int mx,nx,m,n; int ex,ey; String s1,s2,s3,s4; URL urlx; int w; int h; int[] pix=new int[2500*2500]; int[][] memor=new int[2500][2500]; int[][] memog=new int[2500][2500]; int[][] memob=new int[2500][2500]; void makedata(String pic){ catchimg(pic); } void catchimg(String s){ img = Toolkit.getDefaultToolkit().getImage(s); pg = new PixelGrabber(img,0,0,w,h,pix,0,w); try{pg.grabPixels();}catch(InterruptedException ie){} m=0; n=0; for(int i=0;i w*h;i++){ int p = pix[i]; col=new Color(pix[i]); red=col.getRed(); green=col.getGreen(); blue=col.getBlue(); memor[m][n]=red; memog[m][n]=green; memob[m][n]=blue; n=n+1; if (n==w)m=m+1; if (n==w)n=0; } } } package img; import java.awt.Image; import java.awt.Toolkit; import javax.swing.ImageIcon; public class faststep { Image img; int w,h; void makedata(String pic){ ImageIcon icon = new ImageIcon(pic); h = icon.getIconHeight(); w = icon.getIconWidth(); }}
https://w.atwiki.jp/nino-add-up/pages/111.html
画像処理関連のコマンド image processing toolboxが必要 画像の読み込み・書き出し imread 読み込み imwrite 書き出し imtool 読み込みから表示まで行う.表示後は距離を測ったり,RGB値を一覧表示することもできる. 画像の表示 image 0から255の範囲で画像表示 imagesc データのスケーリングを自動で行う.最小値を0,最大値を255としたときのimageと結果は同じ. imshow 行列の形からcolormapを自動で決定する上,モニターのpixelとイメージのpixelを一致させるため行列が小さければ小さなイメージが,大きければ大きなイメージが表示される. 画像の表示のオプション truesize モニターのpixelとイメージのpixelを一致させる axis equal tight 画像のx,y軸の大きさを一致させる. axis off 軸のメモリなどを消す. axis square 画像を正方形にする. colorbar カラ-バーの表示 colormap カラーマップを変える. jet hsv hot cool spring summer autumn winter gray bone copper pink lines カラーマップの種類 caxis([最小値 最大値]) 表示させる値の範囲を決定 画像の編集 imresize 画像の大きさを変える imtransform イメージを変換する. imrotate 画像を回転させる. im2double 倍精度に変換する. im2bw バイナリイメージに変換する. imadd イメージを重ねたりする. imsubtract イメージの引き算. immultiply イメージを掛け合わせる. imdivide イメージの割り算 その他 imhist ヒストグラムの表示 [PR] メールフォーム
https://w.atwiki.jp/guru/pages/17.html
OpenCV (Open Computer Vision Library) http //sourceforge.net/projects/opencvlibrary/ Intelが提供しているオープンソースのコンピュータビジョンライブラリ。 画像処理・コンピュータビジョンの便利な関数が実装されている(オプティカルフロー、snakesなど)。 インストール カメラキャプチャ